Jak muze vice programatoru spolupracovat na projektu, jehoz vysledkem je jeden exe file?

Otázka od: David Michal

19. 11. 2002 16:51

         je jeden exe file?
Zdravim,
Doposud jsem na projektu pracoval sam. Jenze mi zacina prerustat a stojim
pred nutnosti prizvat dalsi programatory. Ma otazka je v subj. Nejde mi ani
tak o nastroj (premyslim o FreeVCS), ale o nakopnuti k clankum o tematu,
pripadne primou radu. Jaka existuji nebezpeci, jak se jim vyhnout apod. A
pokud mozno vse vztazeno k Delphi. I kdyz principy budou zrejme stejne pro
vsechna vyvojova prostredi.
Dekuji moc za jakekoliv vety.  
David
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.419 / Virus Database: 235 - Release Date: 13/11/2002

Odpovedá: Zbysek Hlinka

19. 11. 2002 17:33

         vysledkem je jeden exe file?
On 19 Nov 2002 at 16:17, David Michal wrote:

> Zdravim,
> Doposud jsem na projektu pracoval sam. Jenze mi zacina prerustat a
> stojim pred nutnosti prizvat dalsi programatory. Ma otazka je v subj.

Hm, a co takhle to rozsekat na vicemene nezavisle moduly, ktere budou
spolupracovat pres predem dohodnute rozhrani? Treba takovy COM, .NET,
... Jeden velky exac od vice programatoru mi prijde jako hruza
hruzna.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

Odpovedá: Pavol Kakacka

19. 11. 2002 18:00

         vysledkem je jeden exe file?
From: "Zbysek Hlinka" <hlinka@hlinka.cz>
> On 19 Nov 2002 at 16:17, David Michal wrote:
> > Doposud jsem na projektu pracoval sam. Jenze mi zacina prerustat a
> > stojim pred nutnosti prizvat dalsi programatory. Ma otazka je v subj.
>
> Hm, a co takhle to rozsekat na vicemene nezavisle moduly, ktere budou
> spolupracovat pres predem dohodnute rozhrani? Treba takovy COM, .NET,
> ... Jeden velky exac od vice programatoru mi prijde jako hruza
> hruzna.

Neni to hruzna hruza ani mala hruza  . Nezalezi na tom ci mam jeden exe
alebo viac. Zalezi na tom kolko mam unit. Ak mam unity riesene rozumne, t.j.
ze neni vsetok kod v jednej unite tak prevazne jeden programator pracuje na
jednej, respektive malej skupine unit, ktore su zdielane v nejakom CVS a k
DPR suboru, z ktoreho sa vytvara exe sa pristupuje iba ak chcem unitu
pridat/odobrat pod.

Kakacka Pavol
KasiX@atlas.cz

Odpovedá: David Michal

19. 11. 2002 18:17

         vysledkem je jeden exe file?
No to by sice asi bylo spravne. Jenomze si opravdu neumim predstavit jakym
zpusobem to udelat. Nehlede na nedostatek casu. Proto jsem se ptal zda vubec
existuje moznost prace vice lidi na jednom exe file. Jelikoz vztazeno k
rosekani na COM ci NET, bych to zrejme musel cele prepsat.
Diky,
David

Hm, a co takhle to rozsekat na vicemene nezavisle moduly, ktere budou
spolupracovat pres predem dohodnute rozhrani? Treba takovy COM, .NET,
hruzna.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.419 / Virus Database: 235 - Release Date: 13/11/2002

Odpovedá: Petr Vones

19. 11. 2002 18:23

         vysledkem je jeden exe file?
From: "David Michal" <david.michal@www-bv.com>
> No to by sice asi bylo spravne. Jenomze si opravdu neumim predstavit jakym
> zpusobem to udelat. Nehlede na nedostatek casu. Proto jsem se ptal zda vubec
> existuje moznost prace vice lidi na jednom exe file. Jelikoz vztazeno k

Je vcelku nepodstatne jestli je vysledek jedno EXE nebo dvacet modulu (at jsou
to COM objekty nebo treba balicky). Dulezite spise je aby projekt mel nejakou
koncepci, kde by pak nedochazelo k tomu, ze vice vyvojaru potrebuje pracovat
soucasne na jednom unitu nebo nevi presne na cem ma vlastne delat. Kazdy by
pak mel byt schopen si bud celou aplikaci u sebe prelozit nebo vytvorit
jednoduche testovaci aplikace pro tu cast na ktere pracuje, aby to mohl vubec
prubezne ladit.

Take je dobre aby se dodrzovali urcite dohodnute standardy ohledne formatovani
zdrojoveho kodu, tvorbe jmen apod. Podporovat pouzivani spolecnych funkci pro
casto pouzivane operace, aby kazdy znovu nepsal a neladil tutez funkci, ktera
by pak byla navic v aplikaci zbytecne vicekrat.

V neposledni rade se vyvarovat hruz jako ceske nazvy identifikatoru, premiry
pouzivani nevizualnich komponent pro jednoduche veci kde staci 'obycejny kod'
nebo snad dokonce komponent bez zdrojoveho kodu.

Petr Vones

Odpovedá: Zbysek Hlinka

19. 11. 2002 18:32

         vysledkem je jeden exe file?
On 19 Nov 2002 at 17:53, David Michal wrote:

> No to by sice asi bylo spravne. Jenomze si opravdu neumim predstavit
> jakym zpusobem to udelat. Nehlede na nedostatek casu.

No prave. Rozmysli se, zda mas tolik casu, abys ten jeden velky
maglajz udrzel pohromade.

> Proto jsem se
> ptal zda vubec existuje moznost prace vice lidi na jednom exe file.
> Jelikoz vztazeno k rosekani na COM ci NET, bych to zrejme musel cele
> prepsat.

I to byva kolikrat rychlejsi nez udrzet jeden velky exac od vic lidi.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

Odpovedá: Dalin

19. 11. 2002 19:03

         vysledkem je jeden exe file?
>> Zdravim,
>> Doposud jsem na projektu pracoval sam. Jenze mi zacina prerustat a
>> stojim pred nutnosti prizvat dalsi programatory. Ma otazka je v subj.

>Hm, a co takhle to rozsekat na vicemene nezavisle moduly, ktere budou
>spolupracovat pres predem dohodnute rozhrani? Treba takovy COM, .NET,
>.... Jeden velky exac od vice programatoru mi prijde jako hruza
>hruzna.

Hmm tak s tim bych tak uplne nesouhlasil
asi je jasne ze projekt budes muset rozdelit na nekolik casti
(unit, moduly, )
ale na to aby si do "jednoducheho" programu zaclenoval .NET nebo COM
komunikaci se me zda byt trochu zbytecne.
pokud pouzijes CVS (freeCVS, WinCVS, Teamsources) tak ti vetsinou odpadaji
starosti se synchronizaci souboru.
lze to i bez cvs programu pokud jsou to treba 2 lidi a rozdeli se jeden
pracuje s temato souborama a druhy s timhle
tak se vetsinou dohodou
jeste jeden osobni poznatek zalohovat, zalohovat a zalohovat  
Dalin

Odpovedá: Zbysek Hlinka

19. 11. 2002 18:50

         vysledkem je jeden exe file?
On 19 Nov 2002 at 17:27, Pavol Kakacka wrote:

> Neni to hruzna hruza ani mala hruza  . Nezalezi na tom ci mam jeden
> exe alebo viac. Zalezi na tom kolko mam unit. Ak mam unity riesene
> rozumne, t.j. ze neni vsetok kod v jednej unite tak prevazne jeden
> programator pracuje na jednej, respektive malej skupine unit, ktore su
> zdielane v nejakom CVS a k DPR suboru, z ktoreho sa vytvara exe sa
> pristupuje iba ak chcem unitu pridat/odobrat pod.

Vzhledem k dotazu a nasledne reakci usuzuji, ze to stejne bude muset
prepsat. Vtip je v tom, ze s necim takovym se musi pocitat uz od
zacatku, a program musi byt v zasade psan tak, jako by se jednalo o
samostatne moduly. A kdyz uz je takovy navrh, proc to nepsat rovnou
jako skutecne samostatne moduly?

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

Odpovedá: Petr Vones

19. 11. 2002 18:53

         vysledkem je jeden exe file?
From: "Zbysek Hlinka" <hlinka@hlinka.cz>
> prepsat. Vtip je v tom, ze s necim takovym se musi pocitat uz od
> zacatku, a program musi byt v zasade psan tak, jako by se jednalo o
> samostatne moduly. A kdyz uz je takovy navrh, proc to nepsat rovnou

Ano, na urovni zdrojoveho kodu urcite.

Petr Vones

Odpovedá: David Michal

19. 11. 2002 18:51

         vysledkem je jeden exe file?
Pockej jaky maglajz? To ze mam po buildu jeden exe, preci neznamena, ze cela
apliace je psana v jedne unit. Units mam v soucasne dobe asi 60, a po buildu
je z toho 2.5MB exe file. Ale zde bychom mohli vyvolat zbytecny flame
zastancu jednoho exe a zastancu maleho exace a knihoven. Takze zpatky k
otazce. Pracujete nekdo z vas v team vice lidi a vasim vysledkem je prave
jeden exe file?
Diky,
David

On 19 Nov 2002 at 17:53, David Michal wrote:

> No to by sice asi bylo spravne. Jenomze si opravdu neumim predstavit
> jakym zpusobem to udelat. Nehlede na nedostatek casu.

No prave. Rozmysli se, zda mas tolik casu, abys ten jeden velky
maglajz udrzel pohromade.

> Proto jsem se
> ptal zda vubec existuje moznost prace vice lidi na jednom exe file.
> Jelikoz vztazeno k rosekani na COM ci NET, bych to zrejme musel cele
> prepsat.

I to byva kolikrat rychlejsi nez udrzet jeden velky exac od vic lidi.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.419 / Virus Database: 235 - Release Date: 13/11/2002

Odpovedá: Pavol Kakacka

19. 11. 2002 19:14

         vysledkem je jeden exe file?
From: "David Michal" <david.michal@www-bv.com>
> Pockej jaky maglajz? To ze mam po buildu jeden exe, preci neznamena, ze
cela
> apliace je psana v jedne unit. Units mam v soucasne dobe asi 60, a po
buildu
> je z toho 2.5MB exe file. Ale zde bychom mohli vyvolat zbytecny flame
> zastancu jednoho exe a zastancu maleho exace a knihoven. Takze zpatky k
> otazce. Pracujete nekdo z vas v team vice lidi a vasim vysledkem je prave
> jeden exe file?

Ano, jeden z projektov mame 1 velky exe cca 3.5MB. pricom je v nom cca 15
modulov a cca 350 pasov.
Cize navrh je modularny ale po kompilacie nie.
Vysledok: bez problemov.
Samozrejme lepsie je pracovat modularne ale ak mas na kompilaci dobry HW
neni problem.
A i kedby sme pracovali modularne niektore veci sa lepsie ladia v rezimu
"standalone" jeden exe nez po balickoch ci dll.

Kakacka Pavol
KasiX@atlas.cz

Odpovedá: Martin Schayna

19. 11. 2002 19:29

         vysledkem je jeden exe file?
----- Original Message -----
From: "David Michal" <david.michal@www-bv.com>
> Pockej jaky maglajz? To ze mam po buildu jeden exe, preci neznamena, ze cela
> apliace je psana v jedne unit. Units mam v soucasne dobe asi 60, a po buildu
> je z toho 2.5MB exe file. Ale zde bychom mohli vyvolat zbytecny flame
> zastancu jednoho exe a zastancu maleho exace a knihoven. Takze zpatky k
> otazce. Pracujete nekdo z vas v team vice lidi a vasim vysledkem je prave
> jeden exe file?

Jak uz psal Pavol Kakacka, DPR (+ RES a DOF) od jednoho EXE se da
vyuzivat na lokalu clena teamu i kdyz v nem zmeny nedela a je read-only
a vesele muzes kompilovat, v tom problem nevidim.

Ja mam nasledujici zkusenost:
- vic lidi sdili jeden zdrojovy kod (2000 unit)
- mame pravidla pro pojmenovavani trid, konstant apod.
- mame pravidla pro umistovani spolecnych trid, funkci apod.
- mame pravidla pro dedeni formularu a propracovane predky
- pouzivame version control system, konkretne SourceSafe, ale to je jedno
- builduje se do vice BPL, EXE a DLL ale to je jedno
- builduje se pomoci davky, ktera je take v SourceSafu
- kazdy na svem pocitaci si kdykoliv muze getnout zdroje a prelozit je davkou
- kazdy dava do SourceSafu veci tak aby byly vzdy zkompilovatelne
- na serveru se muze na vyzadani spustit robot ktery:
  - getne zdroje a a kompiluje primo tam, o tom jak to dopadlo rozesila
"net send" zpravu
  - builduje uzivatelskou a programatorskou dokumentaci (javadoc-like komentare
v kodu)
  - builduje instalacku
- tento robot se automaticky spousti i v noci
- posledni prelozene binarky je mozne ziskat ze serveru
- funguje to tak uz vic jak 4 roky

Martin Schayna

Odpovedá: Ales Pavel

19. 11. 2002 21:06

         vysledkem je jeden exe file?
Neni to vubec zadny problem,jde o to dukladne si rozdelit oblasti a
dodrzovat opravdu prisna pravidla pri pracovnich postupech...Dalsi dobrou
veci je spolecna unita do ktere spolecne prihazuji fce ktere se hodi
vsem..to setri praci...
Je ale take pravda..ze nelze pouzivat moc dedicnost pokud pracuje nekdo jako
jak a neustale opravuje predka 
Pokud je ale vyvinuto slusne jadro da se to slusne zvladnout...

Hlavne dulezite urcit sekce a z tech moc nevybocovat...

A pak ty pravidla pri pojmenovavani a ukladani promennych,to je dulezity...

Hezky den

Ales Pavel
TalpaSoft - software pro kazdeho
tel:0777/992792
web: http://Talpa.chytrak.cz
e-casopis: http://rozarkaweb.aktualne.cz


Odpovedá: Pavol Kakacka

19. 11. 2002 21:02

         vysledkem je jeden exe file?
From: "Ales Pavel" <Aldik@quick.cz>
> Neni to vubec zadny problem,jde o to dukladne si rozdelit oblasti a
> dodrzovat opravdu prisna pravidla pri pracovnich postupech...Dalsi dobrou
> veci je spolecna unita do ktere spolecne prihazuji fce ktere se hodi
> vsem..to setri praci...

Takych unit by malo byt co najviac, nie len funkcie ale aj objekty a pod. V
podstate by to mali byt vsetky unity  

> Je ale take pravda..ze nelze pouzivat moc dedicnost pokud pracuje nekdo
jako
> jak a neustale opravuje predka 
> Pokud je ale vyvinuto slusne jadro da se to slusne zvladnout...

Prave naopak, (ale uz sa dostavame mimo povodnu otazku, ktora bola ci to
vobec ide) vecsi projekt neni mozne postavit bez dedicnosti.
Slusne jadro je samozrejma vec  

Kakacka Pavol
KasiX@atlas.cz

Odpovedá: Petr Fejfar

20. 11. 2002 5:58

         vysledkem je jeden exe file?
From: "Pavol Kakacka" <kakacka@proca.cz>

> Neni to hruzna hruza ani mala hruza  . Nezalezi na tom ci mam jeden exe
> alebo viac. Zalezi na tom kolko mam unit.

No, ono hlavne zalezi na tom, kolik mas lidi, jake maji kvality a jak jsou
organizovani, jak rychle to ma byt hotovo a jaky je predpokladany zivotni
cyklus projektu.

Z toho pak plynou prava, povinnosti a odpovednosti jednotlivych lidi a tomu
se take musi podritit kazdodenni chod teamu. Take zalezi, jak velky je to
projekt, jak vypada jeho management etc...

Doporucuji precist odpovidajici kapitoly alespon z nejakych script o SW
inzenyrstvi (jsem 10000 km od domova, tak nemam odkazy
na jinou literaturu ani pristup na www).

Nejcastejsi organizacni struktury jsou:

* demokraticky team
  (osobne si nedovedu predstavit, jak v praxi muze fungovat, zejmena ve
vazbe
    na zodpovednost za projekt - IMHO se hodi spis na nejaky Open Source)
* team se zaloznim programatorem
  (2 srovnatelne dobri programatori, z nichz jeden je leader tj. ma pravomoc
  rozhodovat ve spornych vecech a nese taky odpovednost)
* team hlavniho chirurga
  (jeden leader, ktery umi zvladnout projekt sam, ale na radu veci
   musi pouzit specialisty s hlubsimi znalostmi, nez ma on sam)

Takze kdyz napr. budes mit v teamu cloveka kvalit Petra Vonese, tak ho muzes
pouzit jako backing-up programatora a resit s nim od zacatku vse ve dvojici
a operativne si delit hlavni ukoly mezi Vas dva stejne jako zbyvajici junior
programatory v teamu, nebo ho muzes pouzit jako specialistu s hlubolkymi
znalostmi v chieff surgeon teamu - napr. nechat ho vyresit nedavno
diskutovanou komunikaci mezi moduly a pridelit mu popr. k ruce nejakeho
juniora atd.

Takto organizovane teamy nemivaji vice nez 10 lidi. Pokud je projekt
rozsahlejsi,
buduje se takovych teamu nekolik (nemuseji mit stejnou organizaci).
Ty pracuji nezavisle na sobe a jsou rizeny project managementem
- tady uz se otevira prostor pro poddodavky tj. o nakup reseni od jinych
spolecnosti


HTH, pf

Odpovedá: Jan Sebelík

20. 11. 2002 10:32

         vysledkem je jeden exe file?
> Odesílatel: Ales Pavel <Aldik@quick.cz>
> Je ale take pravda..ze nelze pouzivat moc dedicnost pokud pracuje nekdo jako
> jak a neustale opravuje predka 
Jde o to, dobre se dohodnout na interface (public).
Pak je pouziti dedicnosti naopak vyhodou, mozna nutnosti.
Ja klidne zavolam "inherited", aniz bych vedel, co se bude dit.
Tedy pokud mohu predpokladat, ze to je napsano dobre.
O tom je "encapsulation", prave to ve vetsich projektech udrzi "citelnost"
kodu.

Honza
=========================================
= HAES - RNDr. Jan Sebelik
= http://www.haes.cz
= Skolici a konzultacni stredisko pro Delphi a Win32
= Vojtiskova 206
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347735)
=========================================

Odpovedá: Pavol Kakacka

20. 11. 2002 10:08

         vysledkem je jeden exe file?
From: "Petr Fejfar" <development@callnet.cz>
> > Neni to hruzna hruza ani mala hruza  . Nezalezi na tom ci mam jeden exe
> > alebo viac. Zalezi na tom kolko mam unit.
>
> No, ono hlavne zalezi na tom, kolik mas lidi, jake maji kvality a jak jsou
> organizovani, jak rychle to ma byt hotovo a jaky je predpokladany zivotni
> cyklus projektu.

Hmm  

> buduje se takovych teamu nekolik (nemuseji mit stejnou organizaci).
> Ty pracuji nezavisle na sobe a jsou rizeny project managementem
> - tady uz se otevira prostor pro poddodavky tj. o nakup reseni od jinych
> spolecnosti

Odpovedal som obecne na otazku, tu uz smerujeme niekam uplne mimo povodny
dotaz.
Ale pre informaciu patrime do tejto kategorie  

Kakacka Pavol
KasiX@atlas.cz

Odpovedá: Zbysek Hlinka

20. 11. 2002 10:30

         vysledkem je jeden exe file?
On 19 Nov 2002 at 18:17, Dalin wrote:

> >Hm, a co takhle to rozsekat na vicemene nezavisle moduly, ktere budou
> >spolupracovat pres predem dohodnute rozhrani? Treba takovy COM, .NET,
> >.... Jeden velky exac od vice programatoru mi prijde jako hruza
> >hruzna.
>
> Hmm tak s tim bych tak uplne nesouhlasil
> asi je jasne ze projekt budes muset rozdelit na nekolik casti
> (unit, moduly, )
> ale na to aby si do "jednoducheho" programu zaclenoval .NET nebo COM
> komunikaci se me zda byt trochu zbytecne.

Jednoduchy program zvladne jeden clovek. Jakmile na tom musi delat
vic lidi, uz to prestava byt jednoduchy program, a to i v uvozovkach.

> pokud pouzijes CVS (freeCVS,
> WinCVS, Teamsources) tak ti vetsinou odpadaji starosti se
> synchronizaci souboru. lze to i bez cvs programu pokud jsou to treba 2
> lidi a rozdeli se jeden pracuje s temato souborama a druhy s timhle

CVS ti moc nepomuze, kdyz mas blbe navrzeny projekt, ktery neumozni
dostatecne pruhledne a jednoznacne rozdeleni praci.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

Odpovedá: Zbysek Hlinka

20. 11. 2002 9:50

         vysledkem je jeden exe file?
On 19 Nov 2002 at 18:30, David Michal wrote:

> Pockej jaky maglajz? To ze mam po buildu jeden exe, preci neznamena,
> ze cela apliace je psana v jedne unit. Units mam v soucasne dobe asi
> 60, a po buildu je z toho 2.5MB exe file.

Jisteze to neznamena. Ja ale nevim, jak mas ty unity navzajem
provazane, jake jsou mezi nimi vztahy a kolik kodu je spolecneho. X
unit nerika nic o vnitrnim navrhu aplikace, a o ten tu jde, pokud
chces delit praci mezi vic lidi.

S pozdravem

Zbysek Hlinka
E-mail: hlinka@hlinka.cz, localizator@localizator.com
Phone: +420 603 551 282

Odpovedá: Martin Valach

20. 11. 2002 9:25

         vysledkem je jeden exe file?
Asi budes potrebovat nejaku metodiku.
Toto je metodika pre softwarovu firmu 2 az 10 programatorov.
Moze to posluzit ako inspiracia.

http://www.extremeprogramming.org

mato

Odpovedá: Jaroslav Nadhera

20. 11. 2002 10:05

         vysledkem je jeden exe file?
> Doposud jsem na projektu pracoval sam. Jenze mi zacina prerustat a
> stojim pred nutnosti prizvat dalsi programatory. Ma otazka je v subj.

My to delame nasledovne: Jeden clovek se stava spravcem projektu, urci
pravidla a celkovou koncepci projektu. Projekt si rozdeli na casti, ktere
budou delat dalsi lidi. Urci rozhrani, ktereho se musi vsichni drzet. Kazdy
z programatoru si udela vlastni unity, kde programuje sve funkce a predava
svoji praci spravci projektu. Jedine ten ma narok projekt davat dohromady a
kompilovat vysledne exe a davat ukoly dalsim programatorum. Takhle nam to
funguje uz radu let.

Jaroslav Nadhera

CSH spol. s r.o.
Velflikova 10, 160 00 Praha 6
tel.: 224 312 344-5
fax: 235 522 892
e-mail: nadhera@csh.cz WWW: http://www.csh.cz
pobocka Ostrava:
Nedbalova 14, 701 00 Ostrava
tel: 596 635 687